package com.xu.mb3.mbtools;

import org.apache.ibatis.io.VFS;

import java.io.IOException;
import java.util.List;

/**
 * 磁盘文件系统分为很多种，如 FAT、VFAT、NFS、NTFS等。不同文件系统的读写操作各不相同。
 * VFS（Virtual File System）作为一个虚拟的文件系统将各个磁盘文件系统的差异屏蔽了起来，提供了统一的操作接口。
 * 这使得上层的软件能够用单一的方式来跟底层不同的文件系统沟通, 在操作磁盘文件时，软件程序不需要和实体的文件系统打交道，只需要和 VFS沟通即可。
 * 这使得软件系统的磁盘操作变得更为简单。
 *
 * @author xuguan
 * @since 2024/11/14
 */
public class VFSSample {

    public static void vfsSample() {
        try {
            String path = "org/apache/ibatis";
            final VFS vfs = VFS.getInstance();
            final List<String> list = vfs.list(path);
            System.out.println(list);
        } catch (IOException e) {
            throw new RuntimeException(e);
        }
    }

    public static void main(String[] args) throws Exception {
        vfsSample();
    }
}
